package com.statistics.export;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.HashMap;
import java.util.List;

@Data
public class ApiDemo {
    /** 接口名称 */
    private String interfaceName = "编辑访问控制";

    /** 服务名称 */

    private String serverName = "访问控制";

    /** 接口URL */

    private String interfaceUrl = "/nancal-service-governance/access/updateAccessControl";

    /** 接口分类的id  */

    private String groupId = "1451061906678321153";

    
    private String groupName = "测试分组";

    /** 是否开启跨域  */

    private Boolean isCross = true;

    /** 版本号  */

    private String version = "1.0";


    /** 请求方式 */
    private String method = "POST";

    /** 请求类型 */

    private String requestType;

    /** 返回类型 */

    private String responseType = "application/json";

    /** 接口说明 */

    private String description = "接口说明";

    /** 请求的数据  存储json */

    private Object requestBody = "{root:{$schema:http://json-schema.org/draft-04/schema#,type:object,properties:{id:{type:string,description:主键Id},controllerMethod:{type:number,description:控制方式，1-接口，2-ip},ipAddress:{type:string,description:ip地址},statistics:{type:boolean,description:是否需要统计，false-不需要，false-需要},secretKey:{type:boolean,description:密钥对，true-需要，false-不需要},pattern:{type:string,description:匹配规则},type:{type:number,description:类型，0-白名单，1-黑名单},status:{type:number,description:状态 0未启用，1启用}},required:[controllerMethod,id,type,status]}}";

    /** 请求的数据  存储未处理的  json_raw */

    private Object requestBodyRaw;

    /** request_query */

    private Object requestQuery;

    /** request_header */

    private Object requestHeader = "{root:{$schema:http://json-schema.org/draft-04/schema#,type:object,properties:{code:{type:number,description:响应码：成功返回0},msg:{type:string,description:错误消息，没有错误返回空串},data:{type:string,description:数据集},errors:{type:string,description:表单验证失败信息}}}}";

    /** 返回参数 */

    private Object responseBody;

    /** 正确返回示例 */

    private String responseSuccess;

    /** 错误回示例 */

    private String responseError;

    private Boolean publishStatus;

    private Boolean apiStatus;

    private Boolean onlineStatus;

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long tenantId;

    private String  openStatus;

    private String  formData;

    private String  pathData;

    private String  originJson;

    private String  images;

    
    private List<HashMap<String,String>> imagesView;

    private String  video;


    private HashMap<String,String> videoView;

    private String  lov;



    //命名规则

    private List<String> tags;
}
